﻿<Application
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:app="clr-namespace:InsuranceAdjuster"
    xmlns:appHelpers="clr-namespace:InsuranceAdjuster.Helpers"
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
    xmlns:models="clr-namespace:InsuranceAdjuster.Models"
    xmlns:localViewModels="clr-namespace:InsuranceAdjuster.ViewModels"
    xmlns:Common="clr-namespace:Papa.Common;assembly=Papa.Common" 
    xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"   
    xmlns:System="clr-namespace:System;assembly=mscorlib"   
    xmlns:Source="clr-namespace:InsuranceAdjuster"
    x:Class="InsuranceAdjuster.App"
    mc:Ignorable="d"
    Startup="Application_Startup"
    UnhandledException="Application_UnhandledException">

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
            	<ResourceDictionary Source="Assets/Styles.xaml"/>
            	<ResourceDictionary Source="Assets/DataTemplates.xaml"/>
            	<ResourceDictionary Source="Assets/ObjectResourceDictionary.xaml"/>
            	<ResourceDictionary Source="Assets/BranchStyles.xaml"/>
            	<ResourceDictionary>
            		<app:ApplicationResources x:Key="ApplicationResources" />
            		<appHelpers:NotOperatorValueConverter x:Key="NotOperatorValueConverter" />
                    <appHelpers:StringFormatValueConverter x:Key="StringFormatValueConverter"/>
                    <appHelpers:ResourceWrapper x:Key="ResourceWrapper" />
            		<localViewModels:ViewModelLocator x:Key="Locator" />
            		<appHelpers:ExtractDateConverter x:Key="ExtractDateConverter"/>
            		<appHelpers:ExtractTimeConverter x:Key="ExtractTimeConverter"/>
            	</ResourceDictionary>
            </ResourceDictionary.MergedDictionaries>
            <Source:ColorHolder x:Key="ColorPicker"/>
            <SolidColorBrush x:Key="MainTextColor" Color="{Binding Source={StaticResource BranchStyle}, Path=ForegroundBrush.Color, Mode=TwoWay}"/>
            <SolidColorBrush Color="#FFD0C9B3" x:Key="LightTextColor"/>
            <FontFamily x:Key="MainFont">Segoe</FontFamily>
            <Style x:Key="MenuItem" TargetType="TextBlock">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="21.333"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>
            <System:Double x:Key="MainFontSize">18</System:Double>
            <System:Double x:Key="BiggerTextSize">18.667</System:Double>
            <GridLength x:Key="TitleBarHeight">81</GridLength>
        	<System:Double x:Key="TitleFontSize">37</System:Double>

        	<Style x:Key="TitleStyle" TargetType="TextBlock">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="{StaticResource TitleFontSize}"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>

 			<Style x:Key="MainTextBlockStyle" TargetType="TextBlock">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="{StaticResource MainFontSize}"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>
 			<Style x:Key="CalendarStyle" TargetType="TextBlock">
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        		<Setter Property="FontFamily" Value="Moire ExtraBold"/>
        		<Setter Property="FontSize" Value="32"/>
        	</Style>
 			<Style TargetType="TextBox">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="{StaticResource MainFontSize}"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        		<Setter Property="BorderBrush" Value="{StaticResource LightTextColor}"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="TextBox">
                            <Grid x:Name="RootElement">
                                <VisualStateManager.VisualStateGroups>
                                    <VisualStateGroup x:Name="CommonStates">
                                        <VisualState x:Name="Normal"/>
                                        <VisualState x:Name="MouseOver">
                                            <Storyboard>
                                                <ColorAnimation Storyboard.TargetName="MouseOverBorder" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="#888888" Duration="0"/>
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState x:Name="Disabled">
                                            <Storyboard>
                                                <DoubleAnimation Storyboard.TargetName="DisabledVisualElement" Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState x:Name="ReadOnly">
                                            <Storyboard>
                                                <DoubleAnimation Storyboard.TargetName="ReadOnlyVisualElement" Storyboard.TargetProperty="Opacity" To="1" Duration="0" />
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                    <VisualStateGroup x:Name="FocusStates">
                                        <VisualState x:Name="Focused">
                                            <Storyboard>
                                                <DoubleAnimation Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState x:Name="Unfocused">
                                            <Storyboard>
                                                <DoubleAnimation Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="Opacity" To="0" Duration="0"/>
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                    <VisualStateGroup x:Name="ValidationStates">
                                        <VisualState x:Name="Valid"/>
                                        <VisualState x:Name="InvalidUnfocused">
                                            <Storyboard>
                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
                                                    <DiscreteObjectKeyFrame KeyTime="0">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <Visibility>Visible</Visibility>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                            </Storyboard>
                                        </VisualState>
                                        <VisualState x:Name="InvalidFocused">
                                            <Storyboard>
                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
                                                    <DiscreteObjectKeyFrame KeyTime="0">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <Visibility>Visible</Visibility>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
                                                    <DiscreteObjectKeyFrame KeyTime="0">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <System:Boolean>True</System:Boolean>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                </VisualStateManager.VisualStateGroups>
                                <Border x:Name="Border" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="1" Opacity="1" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}">
                                    <Grid>
                                        <Border x:Name="ReadOnlyVisualElement" Opacity="0" Background="#5EC9C9C9"/>
                                        <Border x:Name="MouseOverBorder" BorderThickness="1" BorderBrush="Transparent">
                                            <ScrollViewer x:Name="ContentElement" Padding="{TemplateBinding Padding}" BorderThickness="0" IsTabStop="False"/>
                                        </Border>
                                    </Grid>
                                </Border>
                                <Border x:Name="DisabledVisualElement" Background="#A5F7F7F7" BorderBrush="#A5F7F7F7" BorderThickness="{TemplateBinding BorderThickness}" Opacity="0" IsHitTestVisible="False"/>
                                <Border x:Name="FocusVisualElement" BorderBrush="#FF6DBDD1" BorderThickness="{TemplateBinding BorderThickness}" Margin="1" Opacity="0" IsHitTestVisible="False"/>
                                <Border x:Name="ValidationErrorElement" BorderThickness="1" CornerRadius="1" BorderBrush="#FFDB000C" Visibility="Collapsed">
                                    <ToolTipService.ToolTip>
                                        <ToolTip x:Name="validationTooltip" Template="{StaticResource ValidationToolTipTemplate}" Placement="Right" 
                         PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}"
                         DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
                                            <ToolTip.Triggers>
                                                <EventTrigger RoutedEvent="Canvas.Loaded">
                                                    <EventTrigger.Actions>
                                                        <BeginStoryboard>
                                                            <Storyboard>
                                                                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
                                                                    <DiscreteObjectKeyFrame KeyTime="0">
                                                                        <DiscreteObjectKeyFrame.Value>
                                                                            <System:Boolean>true</System:Boolean>
                                                                        </DiscreteObjectKeyFrame.Value>
                                                                    </DiscreteObjectKeyFrame>
                                                                </ObjectAnimationUsingKeyFrames>
                                                            </Storyboard>
                                                        </BeginStoryboard>
                                                    </EventTrigger.Actions>
                                                </EventTrigger>
                                            </ToolTip.Triggers>
                                        </ToolTip>
                                    </ToolTipService.ToolTip>
                                    <Grid Width="12" Height="12" HorizontalAlignment="Right" Margin="1,-4,-4,0" VerticalAlignment="Top" Background="Transparent">
                                        <Path Margin="1,3,0,0" Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="#FFDC000C"/>
                                        <Path Margin="1,3,0,0" Data="M 0,0 L2,0 L 8,6 L8,8" Fill="#ffffff"/>
                                    </Grid>
                                </Border>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
            <Style TargetType="sdk:AutoCompleteBox">
            	<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
            	<Setter Property="FontSize" Value="{StaticResource MainFontSize}"/>
            	<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
            	<Setter Property="BorderBrush" Value="{StaticResource LightTextColor}"/>
        	</Style>
        	<Style TargetType="sdk:Label">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="{StaticResource MainFontSize}"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>
        	<Style TargetType="ComboBox">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="{StaticResource MainFontSize}"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>

            <Style x:Key="DisabledTitleStyle" TargetType="TextBlock">
            	<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
            	<Setter Property="FontSize" Value="{StaticResource TitleFontSize}"/>
            	<Setter Property="Foreground" Value="{StaticResource LightTextColor}"/>
            </Style>

            <Style x:Key="IncidentDetailsLabel" TargetType="sdk:Label">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="14"/>
        		<Setter Property="Foreground" Value="White"/>
        		<Setter Property="Margin" Value="0,10,0,0"/>
        		<Setter Property="HorizontalAlignment" Value="Left"/>
        		<Setter Property="VerticalAlignment" Value="Top"/>
        	</Style>
            <Style x:Key="IncidentDetailsValue" TargetType="sdk:Label">
        		<Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
        		<Setter Property="FontSize" Value="21.333"/>
        		<Setter Property="Foreground" Value="{StaticResource MainTextColor}"/>
        	</Style>


            <Common:BoolToVisibilityConverter x:Key="BoolToVisibilityConverter"/>
            <Common:ByteArrayToImageConverter x:Key="ImageConverter"/>

		<ControlTemplate x:Key="ValidationToolTipTemplate">
			<Grid x:Name="Root" Margin="5,0" RenderTransformOrigin="0,0" Opacity="0">
				<Grid.RenderTransform>
					<TranslateTransform x:Name="xform" X="-25"/>
				</Grid.RenderTransform>
				<VisualStateManager.VisualStateGroups>
					<VisualStateGroup x:Name="OpenStates">
						<VisualStateGroup.Transitions>
							<VisualTransition GeneratedDuration="0"/>
							<VisualTransition To="Open" GeneratedDuration="0:0:0.2">
								<Storyboard>
									<DoubleAnimation Storyboard.TargetName="xform" Storyboard.TargetProperty="X" To="0" Duration="0:0:0.2">
										<DoubleAnimation.EasingFunction>
											<BackEase Amplitude=".3" EasingMode="EaseOut"/>
										</DoubleAnimation.EasingFunction>
									</DoubleAnimation>
									<DoubleAnimation Storyboard.TargetName="Root" Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:0.2"/>
								</Storyboard>
							</VisualTransition>
						</VisualStateGroup.Transitions>
						<VisualState x:Name="Closed">
							<Storyboard>
								<DoubleAnimation Storyboard.TargetName="Root" Storyboard.TargetProperty="Opacity" To="0" Duration="0"/>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="Open">
							<Storyboard>
								<DoubleAnimation Storyboard.TargetName="xform" Storyboard.TargetProperty="X" To="0" Duration="0"/>
								<DoubleAnimation Storyboard.TargetName="Root" Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>
				</VisualStateManager.VisualStateGroups>

				<Border Margin="4,4,-4,-4" Background="#052A2E31" CornerRadius="5"/>
				<Border Margin="3,3,-3,-3" Background="#152A2E31" CornerRadius="4"/>
				<Border Margin="2,2,-2,-2" Background="#252A2E31" CornerRadius="3"/>
				<Border Margin="1,1,-1,-1" Background="#352A2E31" CornerRadius="2"/>

				<Border Background="#FFDC000C" CornerRadius="2"/>
				<Border CornerRadius="2">
					<TextBlock 
						UseLayoutRounding="false" 
						Foreground="White" Margin="8,4,8,4" MaxWidth="250" TextWrapping="Wrap" Text="{Binding (Validation.Errors)[0].ErrorContent}"/>
				</Border>
			</Grid>
		</ControlTemplate>
		<ControlTemplate x:Key="ComboBoxControlTemplate1" TargetType="ComboBox">
			<Grid>
				<Grid.Resources>
					<Style x:Name="comboToggleStyle" TargetType="ToggleButton">
						<Setter Property="Foreground" Value="#FF333333"/>
						<Setter Property="Background" Value="#FF1F3B53"/>
						<Setter Property="BorderBrush">
							<Setter.Value>
								<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
									<GradientStop Color="#FFA3AEB9" Offset="0"/>
									<GradientStop Color="#FF8399A9" Offset="0.375"/>
									<GradientStop Color="#FF718597" Offset="0.375"/>
									<GradientStop Color="#FF617584" Offset="1"/>
								</LinearGradientBrush>
							</Setter.Value>
						</Setter>
						<Setter Property="BorderThickness" Value="1"/>
						<Setter Property="Padding" Value="3"/>
						<Setter Property="Template">
							<Setter.Value>
								<ControlTemplate TargetType="ToggleButton">
									<Grid>
										<VisualStateManager.VisualStateGroups>
											<VisualStateGroup x:Name="CommonStates">
												<VisualState x:Name="Normal"/>
												<VisualState x:Name="MouseOver">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay" Storyboard.TargetProperty="Opacity" To="1"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Pressed">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay2" Storyboard.TargetProperty="Opacity" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="Highlight" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Disabled" />
											</VisualStateGroup>
											<VisualStateGroup x:Name="CheckStates">
												<VisualState x:Name="Checked">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay3" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="Highlight" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[1].(GradientStop.Color)" To="#E5FFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[2].(GradientStop.Color)" To="#BCFFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[3].(GradientStop.Color)" To="#6BFFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[0].(GradientStop.Color)" To="#F2FFFFFF"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Unchecked"/>
											</VisualStateGroup>
											<VisualStateGroup x:Name="FocusStates">
												<VisualState x:Name="Focused">
													<Storyboard>
														<ObjectAnimationUsingKeyFrames Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="Visibility" Duration="0">
															<DiscreteObjectKeyFrame KeyTime="0">
																<DiscreteObjectKeyFrame.Value>
																	<Visibility>Visible</Visibility>
																</DiscreteObjectKeyFrame.Value>
															</DiscreteObjectKeyFrame>
														</ObjectAnimationUsingKeyFrames>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Unfocused" />
											</VisualStateGroup>                                                   
										</VisualStateManager.VisualStateGroups>
										<Rectangle x:Name="Background" RadiusX="3" RadiusY="3" Fill="{TemplateBinding Background}" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="{TemplateBinding BorderBrush}"/>
										<Rectangle x:Name="BackgroundOverlay" Opacity="0" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000"/>
										<Rectangle x:Name="BackgroundOverlay2" Opacity="0" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000"/>
										<Rectangle x:Name="BackgroundGradient" RadiusX="2" RadiusY="2" StrokeThickness="1" Stroke="#FFFFFFFF" Fill="White"/>
										<Rectangle Opacity="0" x:Name="BackgroundOverlay3" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000" Margin="1,0,-1,0"/>
										<Rectangle Opacity="0" x:Name="BackgroundGradient2" RadiusX="2" RadiusY="2" StrokeThickness="1" Stroke="#FFFFFFFF">
											<Rectangle.Fill>
												<LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
													<GradientStop Color="#FFFFFFFF" Offset="0" />
													<GradientStop Color="#F9FFFFFF" Offset="0.375" />
													<GradientStop Color="#E5FFFFFF" Offset="0.625" />
													<GradientStop Color="#C6FFFFFF" Offset="1" />
												</LinearGradientBrush>
											</Rectangle.Fill>
										</Rectangle>
										<Rectangle x:Name="Highlight" RadiusX="2" RadiusY="2" Opacity="0" IsHitTestVisible="false" Stroke="#FF6DBDD1" StrokeThickness="1" Margin="{TemplateBinding BorderThickness}" />
										<ContentPresenter
											x:Name="contentPresenter"
											Content="{TemplateBinding Content}"
											ContentTemplate="{TemplateBinding ContentTemplate}"
											HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
											Margin="0,13,3,12" d:LayoutOverrides="Height"/>
										<Rectangle x:Name="FocusVisualElement" RadiusX="3.5" Margin="1"  RadiusY="3.5" Stroke="#FF6DBDD1" StrokeThickness="1" Visibility="Collapsed" IsHitTestVisible="false" />                                                
									</Grid>
								</ControlTemplate>
							</Setter.Value>
						</Setter>
					</Style>
				</Grid.Resources>
				<VisualStateManager.VisualStateGroups>
					<VisualStateGroup x:Name="CommonStates">
						<VisualState x:Name="Normal" />
						<VisualState x:Name="MouseOver" />
						<VisualState x:Name="Disabled">
							<Storyboard>
								<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="DisabledVisualElement" Storyboard.TargetProperty="(UIElement.Opacity)" To=".55"/>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>
					<VisualStateGroup x:Name="FocusStates">
						<VisualState x:Name="Focused">
							<Storyboard>
								<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="Unfocused"/>
						<VisualState x:Name="FocusedDropDown">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Duration="00:00:00" Storyboard.TargetName="PopupBorder" Storyboard.TargetProperty="(UIElement.Visibility)">
									<DiscreteObjectKeyFrame KeyTime="00:00:00">
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>                            
					<VisualStateGroup x:Name="ValidationStates">
						<VisualState x:Name="Valid"/>
						<VisualState x:Name="InvalidUnfocused">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="InvalidFocused">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<System:Boolean>True</System:Boolean>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>
				</VisualStateManager.VisualStateGroups>
				<Border x:Name="ContentPresenterBorder">
					<Grid>
						<ToggleButton x:Name="DropDownToggle" Style="{StaticResource comboToggleStyle}"  HorizontalAlignment="Stretch" VerticalAlignment="Stretch"  Margin="0" HorizontalContentAlignment="Right" Background="White" BorderThickness="0">
							<ToggleButton.BorderBrush>
								<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
									<GradientStop Color="#FFA3AEB9" Offset="0"/>
									<GradientStop Color="#FF8399A9" Offset="0.375"/>
									<GradientStop Color="#FF718597" Offset="0.375"/>
									<GradientStop Color="#FF617584" Offset="1"/>
								</LinearGradientBrush>
							</ToggleButton.BorderBrush>
							<Path x:Name="BtnArrow" Height="4" Width="8" Stretch="Uniform" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Margin="0,0,6,0" HorizontalAlignment="Right">
								<Path.Fill>
									<SolidColorBrush x:Name="BtnArrowColor" Color="#FF6C5500"/>
								</Path.Fill>
							</Path>
						</ToggleButton>
						<ContentPresenter x:Name="ContentPresenter" 
							Margin="{TemplateBinding Padding}"  
							HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
							VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
							<TextBlock Text=" " />
						</ContentPresenter>
					</Grid>
				</Border>
				<Rectangle x:Name="DisabledVisualElement" RadiusX="3" RadiusY="3" Fill="White" Opacity="0" IsHitTestVisible="false" />
				<Rectangle x:Name="FocusVisualElement" RadiusX="2" RadiusY="2" Margin="1"  Stroke="#FF6DBDD1" StrokeThickness="1" Opacity="0" IsHitTestVisible="false" />
				<Border x:Name="ValidationErrorElement" BorderThickness="1" CornerRadius="1" BorderBrush="#FFDB000C" Visibility="Collapsed">
					<ToolTipService.ToolTip>
						<ToolTip x:Name="validationTooltip" Template="{StaticResource ValidationToolTipTemplate}" Placement="Right" 
							PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" 
							DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
							<ToolTip.Triggers>
								<EventTrigger RoutedEvent="Canvas.Loaded">
									<BeginStoryboard>
										<Storyboard>
											<ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
												<DiscreteObjectKeyFrame KeyTime="0" >
													<DiscreteObjectKeyFrame.Value>
														<System:Boolean>true</System:Boolean>
													</DiscreteObjectKeyFrame.Value>
												</DiscreteObjectKeyFrame>
											</ObjectAnimationUsingKeyFrames>
										</Storyboard>
									</BeginStoryboard>
								</EventTrigger>
							</ToolTip.Triggers>
						</ToolTip>
					</ToolTipService.ToolTip>
					<Grid Width="12" Height="12" HorizontalAlignment="Right" Margin="1,-4,-4,0" VerticalAlignment="Top" Background="Transparent">
						<Path Margin="1,3,0,0" Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="#FFDC000C"/>
						<Path Margin="1,3,0,0" Data="M 0,0 L2,0 L 8,6 L8,8" Fill="#ffffff"/>
					</Grid>
				</Border>
				<Popup x:Name="Popup">
					<Border x:Name="PopupBorder" HorizontalAlignment="Stretch" Height="Auto" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" CornerRadius="3">
						<Border.Background>
							<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
								<GradientStop Color="#FFFFFFFF" Offset="0"/>
								<GradientStop Color="#FFFEFEFE" Offset="1"/>
							</LinearGradientBrush>
						</Border.Background>
						<ScrollViewer x:Name="ScrollViewer" BorderThickness="0" Padding="1">
							<ItemsPresenter/>
						</ScrollViewer>
					</Border>
				</Popup>
			</Grid>
		</ControlTemplate>
		<ControlTemplate x:Key="ComboBoxControlTemplate2" TargetType="ComboBox">
			<Grid>
				<Grid.Resources>
					<Style x:Name="comboToggleStyle" TargetType="ToggleButton">
						<Setter Property="Foreground" Value="#FF333333"/>
						<Setter Property="Background" Value="#FF1F3B53"/>
						<Setter Property="BorderBrush">
							<Setter.Value>
								<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
									<GradientStop Color="#FFA3AEB9" Offset="0"/>
									<GradientStop Color="#FF8399A9" Offset="0.375"/>
									<GradientStop Color="#FF718597" Offset="0.375"/>
									<GradientStop Color="#FF617584" Offset="1"/>
								</LinearGradientBrush>
							</Setter.Value>
						</Setter>
						<Setter Property="BorderThickness" Value="1"/>
						<Setter Property="Padding" Value="3"/>
						<Setter Property="Template">
							<Setter.Value>
								<ControlTemplate TargetType="ToggleButton">
									<Grid>
										<VisualStateManager.VisualStateGroups>
											<VisualStateGroup x:Name="CommonStates">
												<VisualState x:Name="Normal"/>
												<VisualState x:Name="MouseOver">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay" Storyboard.TargetProperty="Opacity" To="1"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Pressed">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay2" Storyboard.TargetProperty="Opacity" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="Highlight" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Disabled" />
											</VisualStateGroup>
											<VisualStateGroup x:Name="CheckStates">
												<VisualState x:Name="Checked">
													<Storyboard>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundOverlay3" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="Highlight" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<DoubleAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[1].(GradientStop.Color)" To="#E5FFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[2].(GradientStop.Color)" To="#BCFFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[3].(GradientStop.Color)" To="#6BFFFFFF"/>
														<ColorAnimation Duration="0" Storyboard.TargetName="BackgroundGradient2" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[0].(GradientStop.Color)" To="#F2FFFFFF"/>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Unchecked"/>
											</VisualStateGroup>
											<VisualStateGroup x:Name="FocusStates">
												<VisualState x:Name="Focused">
													<Storyboard>
														<ObjectAnimationUsingKeyFrames Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="Visibility" Duration="0">
															<DiscreteObjectKeyFrame KeyTime="0">
																<DiscreteObjectKeyFrame.Value>
																	<Visibility>Visible</Visibility>
																</DiscreteObjectKeyFrame.Value>
															</DiscreteObjectKeyFrame>
														</ObjectAnimationUsingKeyFrames>
													</Storyboard>
												</VisualState>
												<VisualState x:Name="Unfocused" />
											</VisualStateGroup>                                                   
										</VisualStateManager.VisualStateGroups>
										<Rectangle x:Name="Background" RadiusX="3" RadiusY="3" Fill="{TemplateBinding Background}" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="{TemplateBinding BorderBrush}"/>
										<Rectangle x:Name="BackgroundOverlay" Opacity="0" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000"/>
										<Rectangle x:Name="BackgroundOverlay2" Opacity="0" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000"/>
										<Rectangle x:Name="BackgroundGradient" RadiusX="2" RadiusY="2" StrokeThickness="1" Stroke="#FFFFFFFF" Fill="White"/>
										<Rectangle Opacity="0" x:Name="BackgroundOverlay3" RadiusX="3" RadiusY="3" Fill="#FF448DCA" StrokeThickness="{TemplateBinding BorderThickness}" Stroke="#00000000" Margin="1,0,-1,0"/>
										<Rectangle Opacity="0" x:Name="BackgroundGradient2" RadiusX="2" RadiusY="2" StrokeThickness="1" Stroke="#FFFFFFFF">
											<Rectangle.Fill>
												<LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
													<GradientStop Color="#FFFFFFFF" Offset="0" />
													<GradientStop Color="#F9FFFFFF" Offset="0.375" />
													<GradientStop Color="#E5FFFFFF" Offset="0.625" />
													<GradientStop Color="#C6FFFFFF" Offset="1" />
												</LinearGradientBrush>
											</Rectangle.Fill>
										</Rectangle>
										<Rectangle x:Name="Highlight" RadiusX="2" RadiusY="2" Opacity="0" IsHitTestVisible="false" Stroke="#FF6DBDD1" StrokeThickness="1" Margin="{TemplateBinding BorderThickness}" />
										<ContentPresenter
											x:Name="contentPresenter"
											Content="{TemplateBinding Content}"
											ContentTemplate="{TemplateBinding ContentTemplate}"
											HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
											Margin="0,13,3,12" d:LayoutOverrides="Height"/>
										<Rectangle x:Name="FocusVisualElement" RadiusX="3.5" Margin="1"  RadiusY="3.5" Stroke="#FF6DBDD1" StrokeThickness="1" Visibility="Collapsed" IsHitTestVisible="false" />                                                
									</Grid>
								</ControlTemplate>
							</Setter.Value>
						</Setter>
					</Style>
				</Grid.Resources>
				<VisualStateManager.VisualStateGroups>
					<VisualStateGroup x:Name="CommonStates">
						<VisualState x:Name="Normal" />
						<VisualState x:Name="MouseOver" />
						<VisualState x:Name="Disabled">
							<Storyboard>
								<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="DisabledVisualElement" Storyboard.TargetProperty="(UIElement.Opacity)" To=".55"/>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>
					<VisualStateGroup x:Name="FocusStates">
						<VisualState x:Name="Focused">
							<Storyboard>
								<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="(UIElement.Opacity)" To="1"/>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="Unfocused"/>
						<VisualState x:Name="FocusedDropDown">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Duration="00:00:00" Storyboard.TargetName="PopupBorder" Storyboard.TargetProperty="(UIElement.Visibility)">
									<DiscreteObjectKeyFrame KeyTime="00:00:00">
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>                            
					<VisualStateGroup x:Name="ValidationStates">
						<VisualState x:Name="Valid"/>
						<VisualState x:Name="InvalidUnfocused">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
						<VisualState x:Name="InvalidFocused">
							<Storyboard>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<Visibility>Visible</Visibility>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
								<ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
									<DiscreteObjectKeyFrame KeyTime="0" >
										<DiscreteObjectKeyFrame.Value>
											<System:Boolean>True</System:Boolean>
										</DiscreteObjectKeyFrame.Value>
									</DiscreteObjectKeyFrame>
								</ObjectAnimationUsingKeyFrames>
							</Storyboard>
						</VisualState>
					</VisualStateGroup>
				</VisualStateManager.VisualStateGroups>
				<Border x:Name="ContentPresenterBorder" BorderThickness="1" BorderBrush="{StaticResource LightTextColor}">
					<Grid>
						<ToggleButton x:Name="DropDownToggle" Style="{StaticResource comboToggleStyle}"  HorizontalAlignment="Stretch" VerticalAlignment="Stretch"  Margin="0" HorizontalContentAlignment="Right" Background="White" BorderThickness="0">
							<ToggleButton.BorderBrush>
								<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
									<GradientStop Color="#FFA3AEB9" Offset="0"/>
									<GradientStop Color="#FF8399A9" Offset="0.375"/>
									<GradientStop Color="#FF718597" Offset="0.375"/>
									<GradientStop Color="#FF617584" Offset="1"/>
								</LinearGradientBrush>
							</ToggleButton.BorderBrush>
							<Path x:Name="BtnArrow" Height="4" Width="8" Stretch="Uniform" Data="F1 M 301.14,-189.041L 311.57,-189.041L 306.355,-182.942L 301.14,-189.041 Z " Margin="0,-2,6,0" HorizontalAlignment="Right">
								<Path.Fill>
									<SolidColorBrush x:Name="BtnArrowColor" Color="#FF6C5500"/>
								</Path.Fill>
							</Path>
						</ToggleButton>
						<ContentPresenter x:Name="ContentPresenter" 
							Margin="{TemplateBinding Padding}"  
							HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" 
							VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
							<TextBlock Text=" " />
						</ContentPresenter>
					</Grid>
				</Border>
				<Rectangle x:Name="DisabledVisualElement" RadiusX="3" RadiusY="3" Fill="White" Opacity="0" IsHitTestVisible="false" />
				<Rectangle x:Name="FocusVisualElement" RadiusX="2" RadiusY="2" Margin="1"  Stroke="#FF6DBDD1" StrokeThickness="1" Opacity="0" IsHitTestVisible="false" />
				<Border x:Name="ValidationErrorElement" BorderThickness="1" CornerRadius="1" BorderBrush="#FFDB000C" Visibility="Collapsed">
					<ToolTipService.ToolTip>
						<ToolTip x:Name="validationTooltip" Template="{StaticResource ValidationToolTipTemplate}" Placement="Right" 
							PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" 
							DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
							<ToolTip.Triggers>
								<EventTrigger RoutedEvent="Canvas.Loaded">
									<BeginStoryboard>
										<Storyboard>
											<ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
												<DiscreteObjectKeyFrame KeyTime="0" >
													<DiscreteObjectKeyFrame.Value>
														<System:Boolean>true</System:Boolean>
													</DiscreteObjectKeyFrame.Value>
												</DiscreteObjectKeyFrame>
											</ObjectAnimationUsingKeyFrames>
										</Storyboard>
									</BeginStoryboard>
								</EventTrigger>
							</ToolTip.Triggers>
						</ToolTip>
					</ToolTipService.ToolTip>
					<Grid Width="12" Height="12" HorizontalAlignment="Right" Margin="1,-4,-4,0" VerticalAlignment="Top" Background="Transparent">
						<Path Margin="1,3,0,0" Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z" Fill="#FFDC000C"/>
						<Path Margin="1,3,0,0" Data="M 0,0 L2,0 L 8,6 L8,8" Fill="#ffffff"/>
					</Grid>
				</Border>
				<Popup x:Name="Popup">
					<Border x:Name="PopupBorder" HorizontalAlignment="Stretch" Height="Auto" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" CornerRadius="3">
						<Border.Background>
							<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
								<GradientStop Color="#FFFFFFFF" Offset="0"/>
								<GradientStop Color="#FFFEFEFE" Offset="1"/>
							</LinearGradientBrush>
						</Border.Background>
						<ScrollViewer x:Name="ScrollViewer" BorderThickness="0" Padding="1">
							<ItemsPresenter/>
						</ScrollViewer>
					</Border>
				</Popup>

			</Grid>
		</ControlTemplate>
            <!---->
            <SolidColorBrush x:Key="YellowBrush" Color="{Binding Source={StaticResource BranchStyle}, Path=BackgroundBrush.Color, Mode=TwoWay}"/>
		<Style x:Key="YellowRectangleStyle" TargetType="Rectangle">
			<Setter Property="Fill" Value="{StaticResource YellowBrush}"/>
	    </Style>
		<Style x:Key="YellowBorderStyle" TargetType="Border">
			<Setter Property="Background" Value="{StaticResource YellowBrush}"/>
	    </Style>
            <SolidColorBrush x:Key="VehicleCarBackground" Color="White"/>
            <Style x:Key="VehicleDataStyle" TargetType="TextBlock">
                <Setter Property="Foreground" Value="Black"/>              
                <Setter Property="FontSize" Value="16"/>
                <Setter Property="Margin" Value="0,2,0,2"/>
                <Setter Property="HorizontalAlignment" Value="Left"/>
            </Style>
            <LinearGradientBrush x:Key="GrayBackground" EndPoint="0.5,1" StartPoint="0.5,0">
            	<GradientStop Color="#FFF1EEE5" Offset="0"/>
            	<GradientStop Color="#FFC6C2B2" Offset="1"/>
            </LinearGradientBrush>
        </ResourceDictionary>                
    </Application.Resources>
</Application>